<?php

namespace Orqlog\Yacampaign\Domain\Service;

interface CampaignServiceInterface 
{
    
    /**
     * Determeine whether the use is qualified to join
     */
    public function isQualified(int $userId, int $campaignId):bool;

    /**
     * Get the prizes associated with this campain
     */
    public function getPrizesForCampaign(int $campaignId) :array;

    public function addPrize(int $campaignId, array $data);
    
    public function removePrize(int $campaignId, int $prizeId);

    /**
     * Add qualifyPolicies
     */
    public function addQualifyPolicy(int $campaignId, array $data) :void;

    /**
     * remove qualifyPolicy
     */
    public function removeQualifyPolicy(int $campaignId, int $policyId) :void;

    public function decidePrize(int $userId, int $campaignId) :array;
}